<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  <script>
    // 内置构造函数的原型对象
    console.dir(Object.prototype);
    console.dir(Array.prototype);
    console.dir(Function.prototype);
    console.dir(Number.prototype);
    console.dir(String.prototype);

    // 扩展数组的原型方法
    // 不能给原生（内置构造函数）的原型对象赋值一个对象（=方式）（因为原生的不予许修改constructor）
    // 增加一个求偶数的和
          // 错误方法，不能直接赋值对象
          // Array.prototype = {
          //   getOnum : function () {
              // 获取数组this
          //     var sum = 0;
          //     for (let i = 0; i < this.length; i++) {
          //       if (i % 2 != 0) {
          //         sum += this[i]
          //       }
          //     }
          //     return sum;
          //   }
          // }
      Array.prototype.getOnum = function () {
              // 获取数组this
              console.log(this );
              var sum = 0;
              for (let i = 0; i < this.length; i++) {
                if (this[i] % 2 != 0) {
                  sum += this[i]
                }
              }
              return sum;
            }
          
    var arr1 = [5,1,1,1,4,1,22,1,2];
    console.log(arr1.getOnum());
    console.log(Array.prototype);
  </script>
</body>
</html>